import request from '@/config/axios'

// 仓库 VO
export interface BaseStorageVO {
  storageId: number // ID
  storageCode: string // 门店编码
  storageName: string // 门店名称
  storageAddress: string // 门店地址
  storageType: string // 门店类型
  storageMoney: number // 门店金额
  storageStar: number // 门店星级
  housekeeperStar: number // 东东管家星级
  serviceHotline: string // 客服热线
  provinceId: number // 所在省ID
  provinceName: string // 所在省
  cityId: number // 所在市ID
  cityName: string // 所在市
  regionId: number // 所在区ID
  regionName: string // 所在区
  longitude: number // 经度
  latitude: number // 纬度
  promotionalDiscount: string // 限时折扣
  promotionalStartTime: string // 促销开始时间
  promotionalEndTime: string // 促销结束时间
  promotionalDetails: string // 促销详情
  contactName: string // 联系人名称
  contactMobileNo: string // 联系电话
  createBy: string // 创建人
  createTime: string // 创建时间
  updateBy: string // 修改人
  updateTime: string // 修改时间
  remark: string // 备注
  enable: number // 状态：0-禁用，1-启用
}

// 仓库 API
export const BaseStorageApi = {
  // 查询仓库分页
  getBaseStoragePage: async (params: any) => {
    return await request.get({ url: `/crm/storage/page`, params })
  },
  // 查询仓库
  getBaseStorageAll: async () => {
    return await request.get({ url: `/crm/storage/list` })
  },

  // 查询仓库
  getBaseStorageAllDesc: async () => {
    let list: any = await request.get({ url: `/crm/storage/list` })
    list = list.sort((a, b) => a.storageId - b.storageId)
    return list
  },
  // 查询仓库详情
  getBaseStorage: async (id: number) => {
    return await request.get({ url: `/crm/storage/get?id=` + id })
  },

  // 新增仓库
  createBaseStorage: async (data: BaseStorageVO) => {
    return await request.post({ url: `/crm/storage/create`, data })
  },

  // 修改仓库
  updateBaseStorage: async (data: BaseStorageVO) => {
    return await request.put({ url: `/crm/storage/update`, data })
  },

  // 删除仓库
  deleteBaseStorage: async (id: number) => {
    return await request.delete({ url: `/crm/storage/delete?id=` + id })
  },

  // 导出仓库 Excel
  exportBaseStorage: async (params) => {
    return await request.download({ url: `/crm/storage/export-excel`, params })
  }
}
